﻿<!DOCTYPE HTML>
<html lang="zh">
<head>
<title>SetMouseDelay - 语法 &amp; 使用 | AutoHotkey v2</title>
<meta name="description" content="The SetMouseDelay function sets the delay that will occur after each mouse movement or click." />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
</head>
<body>

<h1>SetMouseDelay</h1>

<p>设置每次鼠标移动或单击后发生的延迟.</p>

<pre class="Syntax"><span class="func">SetMouseDelay</span> Delay <span class="optional">, "Play"</span></pre>
<h2 id="Parameters">参数</h2>
<dl>

  <dt>Delay</dt>
  <dd>
    <p>类型: <a href="../Concepts.htm#numbers">整数</a></p>
    <p>时间(单位为毫秒). 使用 -1 表示无延时, 而 0 表示最小延时(然而, 如果使用了 <em>Play</em> 参数, 则 0 和 -1 都表示无延时). 如果未设置, 则对于传统的 SendEvent 模式默认延时为 10, 而对于 <a href="Send.htm#SendPlayDetail">SendPlay 模式</a>为 -1.</p>
  </dd>

  <dt>Play</dt>
  <dd>
    <p>类型: <a href="../Concepts.htm#strings">字符串</a></p>
    <p>单词 <em>Play</em> 会把上面的延时应用于 <a href="Send.htm#SendPlayDetail">SendPlay 模式</a>, 而不是传统的 Send/SendEvent 模式. 如果脚本没有使用此参数,  则 SendPlay 的延时始终为 -1.</p>
  </dd>

</dl>

<h2 id="Return_Value">返回值</h2>
<p>整数: <a href="../Concepts.htm#numbers">整数</a></p>
<p>函数返回以前的设置.</p>

<h2 id="Remarks">备注</h2>
<p>在每次由 <a href="Click.htm">Click</a> 和 <a href="MouseMove.htm">MouseMove</a>/<a href="MouseClick.htm">Click</a>/<a href="MouseClickDrag.htm">Drag</a> 生成的鼠标移动或点击后会自动进行短暂的延时(除非处于 <a href="SendMode.htm">SendInput 模式</a>). 这样做提高了脚本的可靠性, 因为窗口有时无法响应快速的鼠标事件流.</p>
<p>由于操作系统计时系统的精确度, 延时可能会被向上取整到最近的 10 或 15 的倍数.</p>
<p>延时为 0 时实际内部会执行 Sleep(0), 这会将脚本时间片段的剩余部分提供给可能需要它的任何其他进程. 如果没有其他进程需要, 则 Sleep(0) 相当于完全没有延时. 与之相比, 延时为 -1 将完全没有延时.</p>
<p>内置变量 <strong>A_MouseDelay</strong> 包含了 Send/SendEvent 模式的当前设置. <strong>A_MouseDelayPlay</strong> 包含了 <a href="Send.htm#SendPlayDetail">SendPlay 模式</a>的当前设置.</p>
<p>每个新运行的<a href="../misc/Threads.htm">线程</a>(如 <a href="../Hotkeys.htm">热键</a>, <a href="Menu.htm">自定义菜单项</a>或<a href="SetTimer.htm">定时</a>子程序) 都会以此函数的默认设置开始. 这个默认设置可以通过在<a href="../Scripts.htm#auto">脚本启动</a>中使用此函数来改变.</p>
<h2 id="Related">相关</h2>
<p><a href="SetDefaultMouseSpeed.htm">SetDefaultMouseSpeed</a>, <a href="Click.htm">Click</a>, <a href="MouseMove.htm">MouseMove</a>, <a href="MouseClick.htm">MouseClick</a>, <a href="MouseClickDrag.htm">MouseClickDrag</a>, <a href="SendMode.htm">SendMode</a>, <a href="SetKeyDelay.htm">SetKeyDelay</a>, <a href="SetControlDelay.htm">SetControlDelay</a>, <a href="SetWinDelay.htm">SetWinDelay</a></p>
<h2 id="Examples">示例</h2>
<div class="ex" id="ExBasic">
<p><a class="ex_number" href="#ExBasic"></a> 使每次鼠标移动或点击后发生的延迟尽可能的小.</p>
<pre>SetMouseDelay 0</pre>
</div>

</body>
</html>